-
-
Notifications
You must be signed in to change notification settings - Fork 9
Conversation
Is this based on a template taken from somewhere? |
The actions are from another project I worked on with similar build requirements. The docker parts for the manylinux build come from the pypa demo project https://github.com/pypa/python-manylinux-demo You can see results of this in my own repo (in progress) https://github.com/WillAyd/pandas-release/pull/1/checks?check_run_id=441681755 |
OK got a minimum example working on GitHub actions. Here is what it looks like: https://github.com/WillAyd/pandas-release/pull/1/checks?check_run_id=441916246 The artifacts are really zip files containing individual wheels. We could alternately put all of the wheels into one zip file |
A few things worth discussing:
One other thing I had but remove from the process was installing and running Would love any feedback anyone has to offer |
we wouldn’t need to actually run .test() because by definition we only would build these after the. CI is green (it would be nice to make sure that the wheels actually install properly) we should just drop win32 entirely |
Updated to drop 32 bit wheel generation. I also added a step to install and run |
.github/workflows/pythonwheels.yml
Outdated
python-version: ${{ matrix.python-version }} | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install setuptools wheel cython numpy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think it's needed to install dependencies, the wheel building step should create an isolated environment with the dependencies listed in pyproject.toml?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe an issue elsewhere, but removing this fails to build:
https://github.com/WillAyd/pandas-release/pull/1/checks?check_run_id=444542968
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, maybe I am mistaken and pyproject.toml is only used when using pip commands (like "pip install" when building from source). Sorry about that.
In any case, if installing numpy, you need to install the oldest supported version to have compatible wheels for different numpy versions.
My main concern is whether we want to start using something custom, versus tooling that is also used (and thus partly maintained) by other packages in the ecosystem (multibuild is now used by many like numpy, scipy, scikit-learn, ...) |
Its a good question. I just think this is much easier than trying to configure multi build and keeps everything in Azure |
FYI: MacPython/scikit-learn-wheels#23 (building on azure-pipelines) |
WIP to see how this might look